Charge pumps are a class of circuits that deliver a known current to a node. Charge pumps are frequently used in phase locked loop circuits (hereafter simply PLLs). A PLL matches the phase and frequency of a self-generated clock signal to a reference clock signal. In a PLL, a charge pump sinks current, sources current or is in a high impedance state with respect to an output node responsive to the phase and frequency differences between the self-generated clock signal and the reference clock signal. A resistor and a capacitor are connected in series (an RC circuit) between the output node and ground. The output node is also connected to a gate of a transistor. By selectively sinking or sourcing current to the output node, the gate to source voltage of the transistor, and thus, the conductivity of the transistor may be adjusted. Typically, the transistor connects a voltage supply rail to the various sources of one or more inverters. The inverters are connected in series forming a ring oscillator. By adjusting the charge at the output node, the charge pump can adjust the propagation delay of a signal through the ring oscillator and, hence, the frequency of the self-generated clock signal.
Some PLLs match the phase and frequency of a self-generated clock signal that has a frequency which is some multiple of the reference clock signal frequency. This modification may be advantageous to data processing systems in which the data processor operates at some multiple of an input reference clock signal. This frequency multiplication may be accomplished by dividing the frequency of the self-generated clock signal before the self-generated clock signal is compared to the reference clock signal.
The frequency of a PLL's self-generated clock signal may be programmed dynamically by inserting a programmable divider in its path. A PLL incorporating such a divider may generate a clock signal with different frequencies depending upon the settings of the inserted divider circuit. The PLL has a set of stability parameters associated with it for each different divider setting. Generally, it is desirable to have each of these sets of parameters as close to every other set as possible. One method of maintaining a constant set of stability parameters is to vary the current that the charge pump sources or sinks to the output node and to the RC circuit. As described above, the voltage at the output node controls the frequency of the voltage controlled oscillator.
Known programmable current charge pumps have certain disadvantages associated with them. In general, they are slower, larger, require more power and have greater output capacitance than non-programmable charge pumps. Their use, to now, has been a compromise.